home *** CD-ROM | disk | FTP | other *** search
- Path: fido.asd.sgi.com!austern
- From: thp@cs.ucr.edu (Tom Payne)
- Newsgroups: comp.programming.threads,comp.std.c++
- Subject: Re: Is STL MT-Safe?
- Followup-To: comp.programming.threads,comp.std.c++
- Date: 19 Apr 1996 15:31:11 PDT
- Organization: University of California, Riverside
- Approved: austern@isolde.mti.sgi.com
- Message-ID: <4l8pud$3t8@galaxy.ucr.edu>
- References: <4kmjvj$89t@usc.edu> <4kspmb$9tb@ubszh.fh.zh.ubs.com> <3173E95E.5AC@ix.netcom.com> <4l12rf$q11@galaxy.ucr.edu> <31753C02.58A6@ix.netcom.com>
- NNTP-Posting-Host: isolde.mti.sgi.com
- X-Original-Date: 19 Apr 1996 19:35:41 GMT
- X-Newsreader: TIN [UNIX 1.3 950824BETA PL0]
- X-Auth: PGPMoose V1.1 PGP comp.std.c++
- iQBVAwUBMXgUMEy4NqrwXLNJAQGtUgH/aFbnAXVNwo2SgCltJlzxcItQjp4w48Wn
- RgCGsvoJdHrgbvs7UNuEczbmtZ3I4Ntc1PvTpc7VAFxqS1coazkh9w==
- =z2Kf
- Originator: austern@isolde.mti.sgi.com
-
- David Brownell (brownell@ix.netcom.com) wrote:
- : Tom Payne wrote:
- [...]
- : >
- : > The standards process is the appropriate forum for such vendor
- : > agreement. Unfortunately, the standards bodies have failed to provide
- : > the necessary leadership in the areas involving concurrency and
- : > asynchrony. Perhaps, these bodies simply have other fish to fry --
- : > getting the current standard completed is an monumental task.
- :
- : Well, POSIX.1c happened; it's the ANSI/ISO C++ team that's said such
- : issues are "out of scope" for now. I don't think it's realistic to
- : expect POSIX to produce a C++ binding at this time, given some of the
- : issues raised in my writeup above. Nor do I think vendors should be
- : gratuitously diverging, even lacking a formal standards framework.
-
- Unfortunately, competition begets for product differentiation, and
- vendors must compete. Standardization is the responsibility of
- standards bodies, who, I realize, must separate and prioritize their
- concerns. Nevertheless ...
- : > ... a C++ program (with defined behavior)
- : > cannot deal efficiently with some of the simplest asynchrony, e.g., a
- : > hardware-detected exception cannot generate a program exception,
- : > unless the program explicitly polls for it, thus, requiring
- : > unacceptable overhead both in running time and programming effort.
- :
- : Some of us don't think that it's necessarily a good thing to complicate
- : C++ exception processing further -- it's a synchronous mechanism now.
- : I'd hope that the current mechanism for asynchrony (signals) would just
- : be fixed to address your issues!
-
- Fixing the stantard so that signal handlers can read global data (with
- appropriate qualifications on the significance of the result) would be
- a significant help. The complexity here is only in the wording of the
- standard.
-
- The second major need is to allow a signal to force an exception in
- without the program polling for it. Complexity is never "necessarily
- a good thing," unless the benefits outweigh the costs. The benefits
- would be
-
- * lower latency exception responses to signals
-
- * elimination of the CPU overhead of polling
-
- * much simpler programming for such situation.
-
- The cost would be in the increased complexity of the implementation
- and CPU overhead caused by the implementation. In a thread on this
- topic a couple months ago, David Chase gave an implementation strategy
- based on range tables that seemed to involve no CPU overhead and whose
- complexity seemed reasonable.
-
- Tom Payne (thp@cs.ucr.edu)
- ---
- [ comp.std.c++ is moderated. To submit articles: Try just posting with your
- newsreader. If that fails, use mailto:std-c++@ncar.ucar.edu
- comp.std.c++ FAQ: http://reality.sgi.com/austern/std-c++/faq.html
- Moderation policy: http://reality.sgi.com/austern/std-c++/policy.html
- Comments? mailto:std-c++-request@ncar.ucar.edu
- ]
-